package com.itcast.catbaiduweibo;

import org.apache.commons.io.FileUtils;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.select.Elements;

import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

public class Main {


    /**
     * @param args
     * @throws Exception
     */
    public static void main(String[] args) throws Exception {
        //首先设置好百度微博的链接
        String urlFather = "http://www.baidu.com/s?rtt=2&tn=baiduwb&wd=XXXXXX&ct=0&clk=sortbytime";
        String urlSon = "";
        //替换字符串中的XXXXXX为腾讯公司
        List<String> keyWordsList = getKewWDList();
        String filePath = "E:/pingan";
        String fileName = System.currentTimeMillis()+""+".csv";
        File file = new File(filePath,fileName);
        FileUtils.write(file, "\""+"链接\""+",\""+"摘要\""+",\""+"关键字\"", "GBK", true);
        FileUtils.write(file, "\r\n", "GBK", true);
        //这里就是循环操作每个关键字代码
        int i = keyWordsList.size();
        for (String keyWord : keyWordsList){
            urlSon = urlFather.replace("XXXXXX",keyWord);
            BolgBody(urlSon, keyWord,file);
            System.out.println(keyWord + i--);
        }

    }

    /**
     * 获取指定HTML 文档指定的body
     * @throws IOException
     */
    private static void BolgBody(String url,String keyWord,File file) throws Exception {
        // 从 URL 直接加载 HTML 文档
        Document doc = Jsoup.connect(url).get();
        String title;
        String detail;
        for(int i=1;i<=10;i++){
            Elements element = doc.select("#"+i);
            Elements eTitle = element.select(".weibo_all");//全文的链接
            Elements eDetails = element.select(".weibo_detail");//摘要
            title = eTitle.attr("href");
            detail = eDetails.text();
            //下面操作写入文档就OK
            StringBuffer strbu = new StringBuffer();
            strbu.append("\""+ title+"\",");
            strbu.append("\""+ detail+"\",");
            strbu.append("\""+ keyWord.replace("+"," ")+"\"");
            FileUtils.write(file, strbu, "GBK", true);
            FileUtils.write(file, "\r\n", "GBK", true);
        }
    }

    //这个是获取网页的全部内容
    public static String getWeiboContent(String url)throws IOException{
        Document doc = Jsoup.connect(url).get();
        System.out.println(doc);
        return null;
    }

    public static List getKewWDList(){
        List<String> list = new ArrayList<String>();
        list.add("人寿                     ".trim());
        list.add("寿险                     ".trim());
        list.add("安邦人寿                 ".trim());
        list.add("安顾保险                 ".trim());
        list.add("安顾人寿                 ".trim());
        list.add("富德保险                 ".trim());
        list.add("富德人寿                 ".trim());
        list.add("富德生命人寿             ".trim());
        list.add("光大永明人寿             ".trim());
        list.add("合众人寿                 ".trim());
        list.add("弘康人寿                 ".trim());
        list.add("华泰保险                 ".trim());
        list.add("保险+投诉                ".trim());
        list.add("寿险+投诉                ".trim());
        list.add("华泰人寿                 ".trim());
        list.add("汇丰保险                 ".trim());
        list.add("汇丰人寿                 ".trim());
        list.add("人寿+投诉                ".trim());
        list.add("民生人寿                 ".trim());
        list.add("平安寿险                 ".trim());
        list.add("平安人寿                 ".trim());
        list.add("平安+投诉                ".trim());
        list.add("人保人寿                 ".trim());
        list.add("人保寿险                 ".trim());
        list.add("中国人民人寿保险         ".trim());
        list.add("上海人寿                 ".trim());
        list.add("生命人寿                 ".trim());
        list.add("太保人寿                 ".trim());
        list.add("太保寿险                 ".trim());
        list.add("太平洋人寿               ".trim());
        list.add("太平洋寿险               ".trim());
        list.add("太平保险                 ".trim());
        list.add("中国太平                 ".trim());
        list.add("太平人寿                 ".trim());
        list.add("泰康人寿                 ".trim());
        list.add("新华保险                 ".trim());
        list.add("新华人寿                 ".trim());
        list.add("信诚人寿                 ".trim());
        list.add("幸福人寿                 ".trim());
        list.add("阳光保险                 ".trim());
        list.add("国寿+投诉                ".trim());
        list.add("怡安保险                 ".trim());
        list.add("友邦保险                 ".trim());
        list.add("平安保险                 ".trim());
        list.add("中国人保                 ".trim());
        list.add("国寿                     ".trim());
        list.add("中国人寿                 ".trim());
        list.add("中国太保                 ".trim());
        list.add("太平洋保险               ".trim());
        list.add("太保+投诉                ".trim());
        list.add("泰康+投诉                ".trim());
        list.add("中信保险                 ".trim());
        list.add("中邮人寿                 ".trim());
        list.add("众安保险                 ".trim());
        list.add("珠江人寿                 ".trim());
        list.add("医疗保健                 ".trim());
        list.add("移动医疗                 ".trim());
        list.add("医疗行业                 ".trim());
        list.add("医疗服务                 ".trim());
        list.add("医疗管理                 ".trim());
        list.add("医疗咨询                 ".trim());
        list.add("医养健康                 ".trim());
        list.add("健康产业                 ".trim());
        list.add("健康管理                 ".trim());
        list.add("健康咨询                 ".trim());
        list.add("养老产业                 ".trim());
        list.add("养老服务                 ".trim());
        list.add("健康服务                 ".trim());
        list.add("品质管理体系             ".trim());
        list.add("地域服务特点             ".trim());
        list.add("定制保险                 ".trim());
        list.add("互联网++保险             ".trim());
        list.add("服务创新                 ".trim());
        list.add("服务措施                 ".trim());
        list.add("服务方式                 ".trim());
        list.add("服务举措                 ".trim());
        list.add("服务品质                 ".trim());
        list.add("智能客服                 ".trim());
        list.add("客户价值提升             ".trim());
        list.add("客服地域服务差别         ".trim());
        list.add("客户权益                 ".trim());
        list.add("客服体系                 ".trim());
        list.add("客户服务领域             ".trim());
        list.add("客服领域                 ".trim());
        list.add("品质创新                 ".trim());
        list.add("品质管理                 ".trim());
        list.add("全媒体智能               ".trim());
        list.add("创新商业模式             ".trim());
        list.add("提升服务质量             ".trim());
        list.add("客服体系管理             ".trim());
        list.add("体系化管理               ".trim());
        list.add("微服务                   ".trim());
        list.add("温暖客户                 ".trim());
        list.add("客服新举措               ".trim());
        list.add("新业务模式               ".trim());
        list.add("互联网++客服             ".trim());
        list.add("客户体验因素             ".trim());
        list.add("客服体验原因             ".trim());
        list.add("服务体验差               ".trim());
        list.add("服务体验好               ".trim());
        list.add("服务体验报告             ".trim());
        list.add("销量不佳原因             ".trim());
        list.add("用户体验                 ".trim());
        list.add("降低客户投诉率           ".trim());
        list.add("服务流程                 ".trim());
        list.add("工作机制高效             ".trim());
        list.add("关键管理节点             ".trim());
        list.add("流程+管控                ".trim());
        list.add("管理机制                 ".trim());
        list.add("客服管理体系             ".trim());
        list.add("保险管理体系             ".trim());
        list.add("突发事件+作业流程        ".trim());
        list.add("客户投诉处理流程         ".trim());
        list.add("客户投诉作业流程         ".trim());
        list.add("流程管理                 ".trim());
        list.add("投诉流程                 ".trim());
        list.add("突发事件流程             ".trim());
        list.add("突发事件处理流程         ".trim());
        list.add("突发事件应对流程         ".trim());
        list.add("作业管理                 ".trim());
        list.add("作业流程关键             ".trim());
        list.add("作业流程管理             ".trim());
        list.add("寿险+拒赔                ".trim());
        list.add("人寿+拒赔                ".trim());
        list.add("寿险+理赔                ".trim());
        list.add("人寿+理赔                ".trim());
        list.add("保险+赔付                ".trim());
        list.add("平安集团                 ".trim());
        list.add("中国平安                 ".trim());
        list.add("平安银行                 ".trim());
        list.add("平安健康险               ".trim());
        list.add("平安养老险               ".trim());
        list.add("平安公司                 ".trim());
        list.add("平安                     ".trim());
        list.add("泰康在线                 ".trim());
        list.add("平安+寿险+负面           ".trim());
        list.add("平安+人寿+负面           ".trim());
        list.add("平安+寿险+全额           ".trim());
        list.add("平安+人寿+全额           ".trim());
        list.add("平安+寿险+退保           ".trim());
        list.add("平安+人寿+退保           ".trim());
        list.add("平安+人寿+投诉           ".trim());
        list.add("平安+寿险+投诉           ".trim());

        return list;
    }
}
